1. Field of Invention
The present invention relates generally to a communications network system using an TCP (Transmission Control Protocol) and a UDP (User Datagram Protocol) as communications protocols, and more particularly to an apparatus for and a method of measuring performance in TCP communications and UDP communications.
2. Description of the Related Art
The TCP and the UDP are classified as protocols of a fourth layer (a transport layer) on an IP (Internet Protocol: network layer) of a third layer based on the OSI Reference model. What is characteristic of the TCP lies in carrying out a data transmission (transfer) with a reliability, i.e., controlling the data transmission in a normal state by holding the reliability on a communications path throughout the communications from a start to an end thereof, and detecting and recovering an error when it occurs. Therefore, according to the TCP, full duplex/bidirectional stream services are provided to clients of a host layer by setting a connection-oriented virtual communications path.
The term xe2x80x9cconnection-orientedxe2x80x9d given herein may be conceived as a mode for transferring the data via the communications path after establishing the connection, and implies monitoring a data transmission/receipt during the communications. Further, the xe2x80x9cstream servicexe2x80x9d is intended to transmit a large quantity of data directly to a receiving side on a byte-basis, wherein the data are conceived not as a cluster (fixed length) of blocks and packets but as a bit string.
For keeping the reliability in the communications network system by performing the connection-oriented data transfer in the stream services, it is necessary and indispensable to measure performance in the TCP communications. The performance in the TCP communications might largely differ depending upon processing capabilities of transmitting- and receiving-side communications devices, a processing capability of a router on the communications path (route), and a line capacity.
Further, the UDP communications may be conceived as being of a connection less type in contrast with the TCP communications in which the connection-oriented data communications are carried out, and the UDP itself does not control a transfer speed. However, the performance in the UDP communications, as in the TCP communications, might largely differ depending on the elements described above, and it is also necessary and indispensable for the communications network system to measure the performance in the UDP communications.
For measuring the performance in the TCP communications and in the UDP communications, there has hitherto been taken a technique and method of measuring an actual transfer speed by transmitting a multiplicity of measurement-oriented packets with an execution of simulation programs simulating the TCP and UDP communications.
According to this technique and method, however, the multiplicity of measurement-oriented packets are consecutively transmitted to the network in order to enhance a measurement accuracy, and it is therefore inevitable that the network is burdened with an overload.
Accordingly, it is a first object of the present invention to provide an apparatus and a method which are capable of measuring performance in TCP communications without transmitting special packets such as measurement-oriented packets, i.e., without applying an overload onto a network.
It is a second object of the present invention to provide an apparatus and a method which are capable of measuring (more precisely, estimating) the performance in the TCP communications by transmitting and receiving, though some special packets are utilized as measurement-oriented packets, a small number of the measurement-oriented packets at an interval of a fixed time, viz., with no overload on the network.
It is a third object of the present invention to provide an apparatus and a method which are capable of measuring (estimating) the performance in the TCP communications and in the UDP communications by transmitting and receiving, though some special packets are utilized as measurement-oriented packets, a small number of the measurement-oriented packets at a variable interval of a fixed time and observing an increment and a decrement in round trip time, viz., with no overload on the network.
To accomplish the first object given above, according to a first aspect of the present invention, a method of measuring communications performance, comprises a step of obtaining, as performance indexes, both of a round trip time and a maximum segment size, and any one of an average congestion window size, a packet discard rate and a packet discard event rate on the basis of a variable length packet in TCP communications through which the packets are transmitted and received based on a TCP defined as a protocol of a transport layer of the OSI Reference model, and a step of obtaining an effective bandwith representing performance in the TCP communications by calculating values of these performance indexes.
According to a second aspect of the present invention, an apparatus for measuring communications performance, comprises a packet monitoring unit for monitoring a variable length packet in TCP communications through which the packets are transmitted and receive based on a TCP defined as a protocol of a transport layer of the OSI Reference model, and obtaining log information containing address information of a transmitting-side communications device and a receiving-side communications device, a packet category and a packet size from the packets;, a performance index detecting unit for obtaining, as performance indexes, both of a round trip time and a maximum segment size, and any one of an average congestion window size, a packet discard rate and a packet discard event rate on the basis of the log information, and a performance calculating unit for obtaining an effective bandwidth representing performance in the TCP communications by calculating values of these performance indexes.
According to a third aspect of the present invention, an apparatus for measuring communications performance, comprises a packet monitoring unit for monitoring a variable length packet in TCP communications through which the packets are transmitted and received based on a TCP defined as a protocol of a transport layer of the OSI Reference model, and obtaining, per session, log information containing address information of a transmitting-side communications device and a receiving-side communications device, a packet category and a packet size from the packets, a session managing unit for managing a flow of the packets per session, a performance index detecting unit for obtaining, as performance indexes, a round trip time, a maximum segment sized and an average congestion window size on the basis of the log information, a storing unit for recording values of the performance indexes detected by the performance index detecting unit per session designated by the session managing unit, and a performance calculating unit for obtaining an effective bandwidth representing performance in the TCP communications by calculating the values of these performance indexes which are recorded in the storing unit.
To accomplish the second object described above, according to a fourth aspect of the present invention, a method of measuring communications performance, comprises a step of obtaining an effective bandwidth representing performance in TCP communications, wherein an average value or an intermediate value of round trip times obtained based on a round trip time measured by transmitting and receiving a small under number of measurement-oriented packets at an interval of a fixed time, a maximum segment size obtained based on a packet size of the measurement-oriented packets transmitted and received, and a maximum congestion window size estimated from a time change in the round trip time, are used as performance indexes.
According to a fifth aspect of the present invention, an apparatus for measuring communications performance, comprises a measuring unit for measuring respectively a maximum segment size and a round trip time by transmitting and receiving a small number of measurement-oriented packets at an interval of a fixed time, a performance index detecting unit for obtaining an average value or an intermediate value of the round trip times, and estimating the maximum segment size from a time change in the round trip time; and a performance calculating unit for obtaining an effective bandwidth representing performance in the TCP communications on the basis of the maximum segment size, the average value or the intermediate value of the round trip times, and the maximum congestion window size.
To accomplish the third object described above, according to a sixth aspect of the present invention, a method of measuring communications performance, comprises a step of measuring a round trip time by transmitting and receiving a small number of measurement-oriented packets at a variable interval of a fixed time, a step of determining a rate at which the round trip time of the measurement-oriented packet is longer than the round trip time of the measurement-oriented packet just anterior thereto, and a step of checking whether or not the rate is over a predetermined threshold value, then, if over, judging that a transfer speed of the measurement-oriented packet exceeds an available bandwidth of a network route, and thereby judging that the available bandwidth of the network route in any one of a case where the communications are performed by use of a protocol of a transport layer of the OSI Reference model in which the protocol itself such as a UDP does not control the transfer speed and a case where the communications are performance by use of a TCP defined as a protocol of the transport layer of the OSI Reference model, exceeds a certain predetermined value.
According to a seventh aspect of the present invention, an apparatus for measuring communications performance, comprises a measuring unit for measuring a round trip time by transmitting and receiving a small number of measurement-oriented packets at a variable interval of a fixed time, a rate determining unit for determining a rate at which the round trip time of the measurement-oriented packet is longer than the round trip time of the measurement-oriented packet just anterior thereto, and a performance determining unit for checking whether or not the rate is over a predetermined threshold value, then, if over, judging that a transfer speed of the measurement-oriented packet exceeds an available bandwidth of a network route, and thereby judging that the available bandwidth of the network route in a case where the communications are performed by use of a protocol of a transport layer of the OSI Reference model in which the protocol itself such as a UDP does not control the transfer speed, exceeds a certain predetermined value.
According to an eighth aspect of the present invention, an apparatus for measuring communications performance, comprises a measuring unit for measuring a round trip time by transmitting and receiving a small number of measurement-oriented packets at a variable interval of a fixed time, a rate determining unit for determining a rate at which the round trip time of the measurement-oriented packet is longer than the round trip time of the measurement-oriented packet just anterior thereto, and a performance determining unit for checking whether or not the rate is over a predetermined threshold value, then, if over, judging that a transfer speed of the measurement-oriented packet exceeds an available bandwidth of a network route, and thereby judging that the available bandwidth of the network route in a case where the communications are performed by use of a TCP defined as a protocol of the transport layer of the OSI Reference model, exceeds a certain predetermined value.
According to the present invention, an effective bandwidth (a transfer speed) is obtained, wherein both of the round trip time and the maximum segment size, and any one of the average congestion window side, the packet discard rate and the packet discard event rate which are obtained based on the variable length packet in which the TCP communications through which the packets are transmitted and received based on the TCP defined as a protocol of the transport layer of the OSI Reference model, are used as the performance indexes. It is therefore feasible to measure the performance in the TCP communications on the communications route of the network without transmitting a multiplicity of special measurement-oriented packets to the network with no load applied on the network.
Further, according to the present invention, the maximum congestion window size in the case of performing the TCP communications can be estimated from a time change in the round trip time by transmitting and receiving the small number of measurement-oriented packets at the variable interval of the fixed time. An estimated value of the effective bandwidth in the case of performing the TCP communications can be obtained from the average or intermediate value of the round trip times, the maximum segment size and the estimated maximum congestion window size. This makes it possible to estimate the performance in the TCP communications without transmitting the multiplicity of the measurement-oriented packets with no load applied on the network.
Moreover, according to the present invention, an estimated value of the available bandwidth (the effective bandwidth) can be obtained from the rate at which the round trip time increases by transmitting and receiving the small number of measurement-oriented packets at the variable interval of the fixed time. It is therefore feasible to estimate the network performance (the TCP and UDP communications performance) in a short period of time without transmitting the multiplicity of the measurement-oriented packets with no load applied on the network.